home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / gnu / smlltalk / smlltalk < prev    next >
Text File  |  1994-08-27  |  6KB  |  152 lines

  1. GNU Smalltalk version 1.1
  2. -rw-rw-r--  1 gray       556569 Sep 25 15:18 smalltalk1-1.zoo
  3.  
  4.  
  5. Here is a very early (probably very buggy) version of Gnu Smalltalk V1.1
  6. port for the atariST.
  7.  
  8. requirements:
  9.     A 4M atariSt is really required.
  10.     a decent shell (i use gulam)
  11.  
  12. installing:
  13.     - adjust path names in mstpaths.h
  14.     - adjust makefile to find gcc (i call it cgcc)
  15.     - link or copy config/m-atari.h to mstconfig.h
  16.     - in ymakefile change the line that says
  17.         CFLAGS = CFLAGS = $(CFLAGS_NORMAL) $(READLINEDEF)
  18.       to 
  19.         CFLAGS = $(CFLAGS_OPTIMIZE) $(READLINEDEF)
  20.     - in config/m-atari.h add the line
  21.           #define EXTRA_CC_FLAGS -fomit-frame-pointer -fcombine-regs
  22.           to the bottom of the file
  23.  
  24.     - hit make
  25.  
  26. file names etc:
  27.     - if you use UNIXMODE, be sure to either
  28.         unsetenv UNIXMODE
  29.         or
  30.         create all the links using ln -s
  31.  
  32.     -put all the files and executable in a subdir (i put them in \smalltk)
  33.     -on startup it will look in $HOME/stinit for the init file
  34.     -rename ProcessScheduler.st to ProcSched.st before transferring
  35.      files to your St (otherwise the name clashes with Processes.st)
  36.     
  37.     -to make the image:
  38.         mst -V
  39.     this will dump mst.im and then will come to the interactive
  40.     prompt 'st>'. Hit Control-D at this point to exit.
  41.  
  42.     to run
  43.     cd to the subdir with the image and sources
  44.     hit: mst
  45.     wait for the 'st>' prompt (this will take a while)
  46.  
  47. testing:
  48.     cd test
  49.     run.g        run the gulam shell script
  50.         there will be two diffs, both are of no consequence.
  51.     cd examples
  52.     mst -V printhier.st
  53.     mst -V mem-usage.st    this will take a while, and do a lot of gc
  54.                 flipping.
  55. enjoy,
  56. --
  57. bang:   {any internet host}!dsrgsun.CES.CWRU.Edu!bammi    jwahar r. bammi
  58. domain: bammi@dsrgsun.ces.CWRU.edu
  59. GEnie:    J.Bammi
  60.  
  61. addendum:
  62. while building the image, mst.ttp really needs all of memory. It cant
  63. even stand gulam being there. once you have built the image, there is
  64. no problem, you can run it quite comfortably with gulam and a few
  65. acccessories present. the reason is as follows: when its building an
  66. image, mst freezes the garbage collector, requesting more and more
  67. memory from the system (instead of re-using what it has already via
  68. garbage collection). so it ends up requesting a lot of memory (and
  69. that is the error you are seeing). Once it builds up the image, at the
  70. very end it kicks the GC in (you will see a message to this effect),
  71. gc's and dumps the image into mst.im, and then its ready for action.
  72. once you have built the image, there is no problem, at startup it'll
  73. check all the kernel classes against the image, and unless something
  74. has changed, it'll suck in the image in one fell scoop, and kick the
  75. GC right in, and it happily goes along after that (with gulam etc present).
  76.  
  77. here is the procedure i would recommend:
  78.  
  79.     (the default path built into mst.ttp is \smalltk, ie. a folder
  80. called "smalltk" at the root of any drive)
  81.  
  82.     - copy all the *.st files and mst.ttp into \smalltk
  83.     - from the desktop double click on mst.ttp
  84.     - in the dialog box that appears, enter "-V" (capital V)
  85.     - it'll think for a while and then start listing lines of
  86.     the form "processing foo.st..."
  87.     - after its done with all the kernel classes, it'll kick in
  88.     the GC, and then start dumping the image into MST.IM
  89.     -after thats done, it'll say smalltalk ready, and give
  90.     you a prompt.
  91.     - hit ^D (control-D) at the prompt to exit.
  92. now you can enter gulam, cd to \smalltk, and hit mst -V,
  93. it'll check for all the kernel files in \smalltk\*.st, it wont find
  94. anything newer that the image, mst.im, which it'll suck in,
  95. do a complete gc (this takes a few seconds), and then give the top level
  96. interactive prompt.
  97.  
  98. [[ the above is no longer true in V 1.1, you can build an image using gulam ]]
  99.   however, watch out for large accessories, ramdisk etc.
  100. ------------------------------------------------------------------------------
  101.  
  102. GNU Smalltalk version 1.1
  103. by Steve Byrne
  104.  
  105. The files in this directory and its subdirectories constitute the complete
  106. source code for GNU Smalltalk.  The files are organized as follows:
  107.  
  108. .        The source files, both .st (Smalltalk) and C files
  109. config        Various supported platforms
  110. contrib        Contributed software
  111. examples    Some working example Smalltalk files
  112. test        Regression testing files
  113. stix        SmallTalk Interface to X
  114.  
  115. About GNU Smalltalk
  116.  
  117. GNU Smalltalk attempts to be a reasonably faithful implementation of
  118. Smalltalk-80 {tm ParcPlace Systems} as described in the "Blue Book", also know
  119. as "Smalltalk-80, the Language and its Implementation", by Adele Goldberg and
  120. David Robson.  The syntax that the language accepts and the byte codes that the
  121. virtual machine interprets are exactly as they appear in the Blue Book.  Most
  122. of the primitives are the same as well, although due to the differing nature of
  123. the implementation some of the primitives haven't been implemented, and other
  124. new ones have been.
  125.  
  126.  
  127. The current implementation has the following features:
  128.  
  129.   * Incremental garbage collector
  130.   * Binary image save capability
  131.   * C-callout (allows Smalltalk to invoke user-written C code and pass
  132.     parameters to it)
  133.   * GNU Emacs editing mode
  134.   * Highly portable C code implementation
  135.   * Optional byte code compilation tracing and byte code execution tracing
  136.   * Automatically loaded per-user initialization files
  137.  
  138.  
  139.  
  140. Installing GNU Smalltalk
  141.  
  142. Please see the file mst.texinfo which contains the information on how to 
  143. install GNU Smalltalk, and general documentation about the features of
  144. the system.
  145.  
  146.  
  147. Bugs
  148.  
  149. To report bugs or suggestions (or even offer assistance :-) ), send mail
  150. to bug-gnu-smalltalk@prep.ai.mit.edu.  If there is sufficient traffic, I
  151. will set up a gnu.smalltalk newsgroup as well.
  152.